package product

import (
	"gitee.com/tang_q/gin-vue3-admin-api/global"
	"gorm.io/gorm"
)

type SKU struct {
	gorm.Model
	SPUId       uint64    `json:"spu_id" gorm:"comment:所属SPU;column:spu_id"` // 所属SPU ID
	SPU         SPU       `gorm:"foreignKey:SPUId" json:"SPU"`
	Name        string    `json:"name" gorm:"comment:SKU名称"`       // SKU名称
	Price       float64   `json:"price" gorm:"comment:SKU价格"`      // SKU价格
	Stock       int       `json:"stock" gorm:"comment:库存数量"`       // 库存数量
	Image       string    `json:"image" gorm:"comment:SKU图片"`      // SKU图片
	AttributeId string    `json:"attributeId" gorm:"comment:属性ID"` // 属性ID`              // SKU的具体属性组合（如颜色:红色, 尺寸:XL）
	Attribute   Attribute `json:"attribute"`
	Weight      float64   `json:"weight" gorm:"comment:重量"`     // 重量
	Dimensions  string    `json:"dimensions" gorm:"comment:尺寸"` // 尺寸（长x宽x高）
	Barcode     string    `json:"barcode" gorm:"comment:条形码"`   // 条形码`                      // 条形码
	Status      uint8     `json:"status" gorm:"comment"`        // 是否启用
}

func init() {
	err := global.DB.AutoMigrate(&SKU{})
	if err != nil {
		global.Logger.Error("创建表SKU失败", err)
		return
	}
}
